#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=2e6+5;
const int mod=998244353;
int n,m,q,k,b[N],kmp[N]; 
int jc[N],inv[N];
inline int ksm(int x,int y) {
	int ret=1;
	while(y) {
		if(y&1)
			ret=ret*x%mod;
		x=x*x%mod;
		y>>=1;
	}
	return ret;
}
inline int C(int x,int y) {
	if(x<y) return 0;
	return jc[x]*inv[y]%mod*inv[x-y]%mod;
}
int dp[505][505][205];
signed main(){
	freopen("sequence.in","r",stdin);
	freopen("sequence.out","w",stdout);
	ios::sync_with_stdio(0);
	cin.tie(0),cout.tie(0);
	jc[0]=1;
	for(int i=1;i<N;i++) jc[i]=jc[i-1]*i%mod;
	inv[N-1]=ksm(jc[N-1],mod-2);
	for(int i=N-1;i;i--) inv[i-1]=inv[i]*i%mod;
	cin>>n>>m>>q>>k;
	for(int i=1;i<=n;i++) cin>>b[i] ;
	if(q<m) {
		cout<<"0";
		return 0;
	}
	int J=0;
	for(int i=2;i<=n;i++) {
		while(J&&b[J+1]!=b[i])
			J=kmp[J];
		if(b[J+1]==b[i]) ++J;
		kmp[i]=J;
	}
	if(n<=500&&q<=500&&m<=200) {
		for(int i=1;i<=n;i++) {
			for(int j=1;j<=q;j++) {
				for(int o=0;o<=m;o++) {
					
				}
			}
		}
	}
	return 0;
}

